//using System;
//using System.Text;
//using System.Data;
//using System.Collections.Generic;

//namespace Afrs.Draco.Prms.Server.DataObject
//{
//  /// <summary>
//  /// Prms Process Data Object Class
//  /// </summary>
//  [AfrsTableName("PrmsProcess")]
//  #region Query Attributes
//  [AfrsQueryData(QueryDataType.Retrieve, StoredProcedure = "spPrmsProcess_Retrieve")]
//  [AfrsQueryData(QueryDataType.Create, StoredProcedure = "spPrmsProcess_Create")]
//  [AfrsQueryData(QueryDataType.Update, StoredProcedure = "spPrmsProcess_Update")]
//  [AfrsQueryData(QueryDataType.Delete, StoredProcedure = "spPrmsProcess_Delete")]
//  [AfrsQueryData(QueryDataType.RetrieveAll, StoredProcedure = "spPrmsProcess_RetrieveAll")]
//  #endregion
//  #region Parameter Attributes
//  [AfrsQueryParameter("Id", DbType.Int32, "@" + DOPrmsProcess.ROW_ID,
//                      IsRetrieveParameter = true,
//                      IsUpdateParameter = true, IsUpdateMandatory = true,
//                      IsDeleteParameter = true, IsDeleteMandatory = true)]
//  [AfrsQueryParameter("Name", DbType.String, "@" + DOPrmsProcess.ROW_NAME,
//                      IsRetrieveParameter = true,
//                      IsCreateParameter = true, IsCreateMandatory = true,
//                      IsUpdateParameter = true, IsUpdateMandatory = true)]
//  [AfrsQueryParameter("Description", DbType.String, "@" + DOPrmsProcess.ROW_DESCRIPTION,
//                      IsCreateParameter = true,
//                      IsUpdateParameter = true)]
//  [AfrsQueryParameter("IsActive", DbType.Boolean, "@" + DOPrmsProcess.ROW_ACTIVE)]
//  #endregion
//  #region Embedded Data Objects
//  [AfrsDO("Tasks", typeof(DOPrmsTask), IsList = true)]
//  #endregion
//  public class DOPrmsProcess : AfrsDataObjectBase
//  {
//    #region Class Constant declarations
//    #region Row Constant declarations
//    /// <summary>
//    /// ID Row
//    /// </summary>
//    public const string ROW_ID = "PrmsProcess_ID";

//    /// <summary>
//    /// Process Name Row
//    /// </summary>
//    public const string ROW_NAME = "PrmsProcess_Name";

//    /// <summary>
//    /// Prms Process Description Row
//    /// </summary>
//    public const string ROW_DESCRIPTION = "PrmsProcess_Description";

//    /// <summary>
//    /// Active Row
//    /// </summary>
//    public const string ROW_ACTIVE = "PrmsProcess_Active";
//    #endregion
//    #endregion

//    #region Class Variable declarations
//    private long m_Id;
//    private string m_Name;
//    private string m_Description;
//    private bool m_IsActive;

//    private List<DOPrmsTask> m_Tasks;
//    #endregion

//    #region Class Constructors & Destructors
//    /// <summary>
//    /// Class Constructor
//    /// </summary>
//    public DOPrmsProcess() : base() { }
//    #endregion

//    #region Class Properties
//    #region DO Properties
//    /// <summary>
//    /// Prms Process ID
//    /// </summary>
//    [AfrsTableColumn(DOPrmsProcess.ROW_ID, DbType.Int32)]
//    public override long Id
//    {
//      get { return (this.m_Id); }
//      set { this.m_Id = value; }
//    }

//    /// <summary>
//    /// Prms Process Name
//    /// </summary>
//    [AfrsTableColumn(DOPrmsProcess.ROW_NAME, DbType.String)]
//    public string Name
//    {
//      get { return (this.m_Name); }
//      set { this.m_Name = value; this.IsChanged = true; }
//    }

//    /// <summary>
//    /// Prms Process Description
//    /// </summary>
//    [AfrsTableColumn(DOPrmsProcess.ROW_DESCRIPTION, DbType.String)]
//    public string Description
//    {
//      get { return (this.m_Description); }
//      set { this.m_Description = value; this.IsChanged = true; }
//    }

//    /// <summary>
//    /// Prms Process Active indicator
//    /// </summary>
//    [AfrsTableColumn(DOPrmsProcess.ROW_ACTIVE, DbType.Boolean)]
//    public bool IsActive
//    {
//      get { return (this.m_IsActive); }
//      set { this.m_IsActive = value; }
//    }
//    #endregion

//    #region Embedded Object properties
//    /// <summary>
//    /// Prms Tasks associated with this Process
//    /// </summary>
//    [AfrsDOParameter("Id", "@" + DOPrmsProcess.ROW_ID, DbType.Int32)]
//    public List<DOPrmsTask> Tasks
//    {
//      get
//      {
//        // Create the object if required
//        if (this.m_Tasks == null) { this.m_Tasks = new List<DOPrmsTask>(); }

//        // Return to calling method
//        return (this.m_Tasks);
//      }
//      set { this.m_Tasks = value; }
//    }
//    #endregion
//    #endregion

//    #region Class Methods
//    /// <summary>
//    /// This method is responsible for clearing all data items and resetting the 
//    /// relevant values back to their default values
//    /// </summary>
//    public override void Clear()
//    {
//      // Declare the required variables

//      // Clear the relevant data items
//      this.m_Id = 0;
//      this.m_Name = string.Empty;
//      this.m_Description = string.Empty;
//      this.m_IsActive = false;

//      // Clear the embedded objects
//      if (this.m_Tasks != null) { this.m_Tasks.Clear(); }

//      // Return to calling method
//      return;
//    }
//    #endregion

//    #region Class Support Methods
//    #endregion
//  }
//}
